Saltar para o conteúdo

Point-to-Point Tunneling Protocol

Origem: Wikipédia, a enciclopédia livre.

O Point-to-Point Tunneling Protocol (PPTP) é um método obsoleto de rede privada virtual, com diversos problemas de segurança. O PPTP utiliza um canal de controle sobre TCP e um túnel GRE para encapsular pacotes do tipo PPP.

A especificação do PPTP não descreve funcionalidades de criptografia ou autenticação e requer que o PPTP seja tunelado para que funcionalidades de segurança sejam implementadas. Contudo, a maioria das implementações de PPTP distribuídas na família de produtos Windows, implementa vários níveis de autenticação e criptografia nativamente como funcionalidade padrão da pilha PPTP. O uso comum deste protocolo é prover níveis de segurança e acesso remoto comparáveis a produtos típicos de VPN existentes(na época) no mercado.

Em Julho de 1999, foi publicada a especificação RFC 2637[1] desenvolvida em parceria entre Microsoft, Ascend Communications (hoje parte da Alcatel-Lucent), 3Com e outros. Contudo, esta publicação não foi proposta ou ratificada como um padrão aprovado pelo Internet Engineering Task Force.

Descrição do protocolo

[editar | editar código-fonte]

Um túnel PPTP é inicializado através da comunicação entre os pares na porta 1723/(TCP). Esta conexão é utilizada para iniciar e gerenciar uma segunda conexão(túnel) do tipo GRE entre o mesmo par de equipamentos participantes.

O pacote de formato PPTP GRE não é padrão, e inclui um campo adicional chamado acknowledgement no lugar do campo típico routing no cabeçalho GRE. Contudo, da mesma forma que uma conexão GRE convencional, estes pacotes GRE são enviados diretamente em pacotes IP encapsulados utilizando o número de protocolo 47.

O túnel GRE é utilizado para transportar os pacotes PPP encapsulados, permitindo o tunelamento de quaisquer protocolos que possam ser carregados pelo PPP, incluindo IP, NetBEUI e IPX.

Na implementação da Microsoft, o tráfego PPP tunelado pode ser autenticado utilizando PAP, CHAP, ou MS-CHAP v1/v2.

O PPTP foi alvo de diversas análises de segurança e sérias vulnerabilidades foram descobertas no protocolo. As vulnerabilidades conhecidas estão relacionadas com os protocolos de autenticação utilizados em conjunto com o PPP, o projeto do protocolo MPPE assim como a integração entre PPP e MPPE durante a autenticação e estabelecimento de chaves de sessão[2][3][4].

Um sumário destas vulnerabilidades encontra-se abaixo:

  • O MS-CHAP-v1 é fundalmentalmente inseguro. Ferramentas existem para de forma trivial extrair hashes de senhas do NT após uma análise de tráfego MSCHAP-v1 capturado.[5]
  • Ao utilizar o MS-CHAP-v1, o MPPE utiliza a mesma chave de sessão RC4 para encriptar tráfego nos dois sentidos do fluxo. Este tráfego pode ser criptoanalisado com métodos padrão efetuando XOR dos fluxos de dados em ambas as direções para extrair informação[6]
  • MS-CHAP-v2 é vulnerável a ataques de dicionário em pacotes de resposta à desafio capturados. Ferramentas existem para efetuar este processo rapidamente. [7]
  • Em 2012, foi demonstrado que a complexidade de um ataque de força bruta em uma chave MS-CHAP-v2 é equivalente a um ataque de mesmo tipo em uma única chave DES. Um serviço online demonstrou que é capaz de de decriptar uma senha MS-CHAP-v2 em 23 horas.[8][9].
  • O MPPE utiliza o RC4 como cifra para o fluxo encriptado. Não existe um método para a autenticação do fluxo de texto cifrado portanto, este é vulnerável a ataques do tipo bit-flipping. Um atacante pode modificar o fluxo em trânsito e ajustar bits únicos para mudar o conteúdo de saída do fluxo sem que seja detectado. Estas trocas de bit podem ser detectados por outros protocolos através de checksums ou outros métodos.[5]

EAP-TLS é visto como uma alternativa superior para a autenticação do PPTP;[10] contudo, requer a implementação de PKI com certificados no cliente e no servidor. Este fato pode tornar inviável esta forma de autenticação para algumas localidades em que a instalação remota é necessária.

Referências

  1. RFC 2637
  2. «Microsoft diz "não use o PPTP e MS-CHAM"(em inglês)». Consultado em 3 de novembro de 2012 
  3. «Golpe mortal no PPTP(em inglês)». Consultado em 3 de novembro de 2012 
  4. «Diferenças entre PPTP e L2TP(em inglês)». Consultado em 7 de agosto de 2016 
  5. a b Bruce Schneier, Criptoanálise do PPTP da Microsoft.
  6. Bruce Schneier, Criptoanálise do PPTP da Microsoft e Extensões de Autenticação(MS-CHAPv2), 19 de Outubro de 1999.
  7. Josh do willhackforsushi.com "notícias Arquivado em 2012-07-26 na Archive.today".
  8. «Dividir para Conquistar: Quebrando o MS-CHAPv2 com 100% de acerto(em inglês)». Cloudcracker.com. 29 de julho de 2012. Consultado em 7 de setembro de 2012. Arquivado do original em 16 de março de 2016 
  9. «Marlinspike demonstra quebra do MS-CHAPv2(em inglês)». The Register. 31 de julho de 2012. Consultado em 7 de setembro de 2012 
  10. Escolhendo EAP-TLS ou MS-CHAP v2 para autenticação de usuário, Microsoft TechNet, 28 de Março de 2003

Ligações externas

[editar | editar código-fonte]